#ifndef CONFIGS_H
#define CONFIGS_H

#include "main.h"
#include "oled.h"

#define     True    1
#define     False   0

#define NEW_FLASH_DATA_LENGTH 2

#define     FLASH_STEP_SELF_TEST    0
#define 		FLASH_STEP_ENSURE				1
#define     FLASH_STEP_WORK         2

#define COLOR_RED 								0x00
#define COLOR_BLUE								0x01

#define AMROR_SMALL								0x00
#define AMROR_BIG									0x01

typedef enum{
	ONLINE,
	OFFLINE
}Network_mode;

typedef enum{
	NO_MESSAGE,
	NRF_NOT_FOUND,
	SAVING
}MESSAGE_TYPE;


typedef struct{
    uint8_t flash_work_step;
		Network_mode vision_tool_networkmode;
    uint8_t device_master_if;
    uint8_t device_id;
    uint8_t nrf_init_flag;
		uint8_t menu_data_update_if;
		uint8_t	message_if;
		MESSAGE_TYPE message_type;
}vision_basic_config_t;


typedef struct{
	uint8_t target_color;
	uint8_t robot_3_amror_size;
	uint8_t robot_4_amror_size;
	uint8_t robot_5_amror_size;
}target_robot_data_t;


extern uint8_t data_get_from_nuc[64];
extern uint8_t data_get_from_nuc_flag;
extern uint8_t oled_rotate_if;
extern uint8_t new_flash_basic_data[NEW_FLASH_DATA_LENGTH];
extern vision_basic_config_t vision_basic_config;
extern uint8_t hal_init_if;
extern target_robot_data_t target_robot_data;
extern uint8_t han_prt_df[4],color_to_show[2],num_3_hanz[4],num_4_hanz[4],num_5_hanz[4],num_3_hanz_char[2],num_4_hanz_char[2],num_5_hanz_char[2];

void vision_tool_basic_config_init(void);

#endif
